/*
* dichotomy : 二分 本质对立
*
* 在arr上，找满足>=value的最左位置
*/

function exist(arr, target) {
    if (!arr || arr.length === 0) return false

    let L = 0,
        R = arr.length - 1,
        index = -1 // 记录最左索引位置
    while(L <= R) {
        let mid = L + ((R-L) >> 1)
        if (arr[mid] >= target) {
            index = mid
            R = mid - 1
        } else {
            L = mid + 1
        }
    }
    return index
}

function test() {
    let arr = Array(10)
    for (let i = 0;i < arr.length;i++) {
        arr[i] = parseInt(Math.random() *10)
    }
    arr.sort((a,b)=>a-b)
    console.log(arr)
    console.log(exist(arr, 4))
}

test()
